package java_thinking.unit_20._20_3;

/**
 * @Desc:   20.3.2 公共方法，将public方法抽取到一个有用的接口中
 *      1.@ExtractInterface("IMultiplier") 将要生成接口的名字
 * @author: cww
 * @DateTime: 2019-05-26 22:57
 */
@ExtractInterface("IMultiplier")
public class Multiplier {
    /**
     * 乘法操作
     * @param x
     * @param y
     * @return
     */
    public int multiply(int x, int y) {
        int total = 0;
        for (int i = 0; i < x; i++) {
            total = add(total, y);
        }
        return total;
    }

    /**
     * 非公共方法，将不作为接口的一部分
     * @param x
     * @param y
     * @return
     */
    private int add(int x, int y) {
        return x + y;
    }

    public static void main(String[] args) {
        Multiplier m = new Multiplier();
        System.out.println("11*16 = " + m.multiply(11,16));
    }
}
